The present invention relates generally to the monitoring of IP Internet Protocol (IP) addresses on a plurality of computer networks, and more particularly, to monitoring of a local network adapter having IP addresses by the local computer connected to the network adapter.
A wide-area network (WAN) is a computer network that spans a relatively large geographical area. Typically, a WAN includes two or more local-area networks (LANs). Computers connected to a wide-area network are often connected through public networks, such as the telephone system. Computers can also be connected to a WAN through leased lines or satellites. The largest WAN in existence is the Internet.
Each computer on the WAN includes a network adapter. A network adapter is a circuit board that plugs into a slot in a computer and has one or more sockets to which cables are attached. In a local-area computer network having multiple computers and a network cable connecting the multiple computers, each of the network adapters provides a physical communication path between an associated computer and the network cable. A network adapter can also be called a network adapter card, a network card, and a network interface card. For example, in FIG. 1, a wide-area computer network 10 has five computers A, B, C, D, E, each having a corresponding network adapter NA, NB, NC, ND, NE. Computers A and B form a first LAN 12 and are connected to a network cable 14. Computers A and B are connected to a communication device 30 and computers C and D are connected to a communication device 40. Devices 30 and 40 can be routers, gateways, etc. Computers C and D form a second LAN 20 and are connected to a network cable 22. Computer E is a stand alone computer. Network cables 14, 22 and computer E are connected to a network 50.
Each network adapter NA, NB, NC, ND, NE has one or more network addresses to which communications can be directed. A network address is a unique identifier of a network device on the computer network, and is usually represented as a number or series of numbers. The failure of a network adapter can disconnect the associated computer from the computer network. If one computer is processing tasks for another computer on the computer network, the failure of a network adapter can disable the entire computer network.
On a Windows NT computer network, a utility is provided for checking communication paths between computers on the computer network. This utility is known as Packet Internet Groper and is called (PING). PING can be invoked from time to time to check network communication paths. PING uses the Transmission Control Protocol/Internet Protocol (TCP/IP). TCP/IP is an industry standard suite of networking protocols, enabling dissimilar nodes in a heterogeneous environment to communicate with one another. This means that TCP/IP allows two computers to communicate even though the two computers have different network operating systems. PING uses Windows socket-style name resolution to resolve the name to an address, so if pinging by address succeeds but pinging by name fails, the problem lies in address resolution, not network connectivity. Using PING, the syntax is PING IP address or PING host (for example, PING 199.199.199.2 or PINGmicrosoft.com).
For example, in FIG. 1, to monitor whether computer A is connected to the local-area computer network, computer A can be pinged using the PING utility from computer B using either the address or the name or both. To monitor whether computer A is connected to the wide-area computer network, computer A can be pinged using the PING utility from either computer C, D or E using either the address or the name or both. A message is sent from the receiving computer back to computer A. The sending computer then looks for a reply from computer A. If a reply is received by the sending computer, then computer A is considered to be connected to the computer network. If no response is received by the sending computer, then computer A is not considered to be in communication with the computer network.
The disadvantage of the PING utility is that although a computer can be pinged, the echo/reply packet cannot be specified to be sent to the computer from a specific computer through a specific network adapter. Instead, PING looks to routing tables used by Windows NT. For example, using PING, the echo/reply packet may be sent to computer A by either computers B, C, D or E. The echo/reply packet would be sent by any of these computers and returned to the sending computer. It would be difficult to periodically monitor each of the network adapters on a WAN using the PING utility because the address of the sending computer cannot be specified. Thus, to monitor each of the network adapters on a computer network, either WAN or LAN, would be complex using the PING utility because look up tables would be required, requiring periodic updating.
A method of checking nodes on a computer network is disclosed in U.S. Pat. No. 5,668,952. A node is any addressable device on a computer network. Each computer on a LAN can be checked by sending an address resolution protocol (ARP) request to a computer on the LAN. ARP is a method used to determine the physical address of a target host. ARP is a part of the Internet Protocol (IP) and enables a host that knows only the logical (IP) address of a target host to find the physical (Media Access Control or MAC) address of the same target host. ARP can only be used on networks capable of hardware broadcasts. MAC is in the Data-Link Layer (Layer 2 of the OSI Reference Model) that controls the use of network hardware and governs access to transmission media. This sublayer is defined in the Institute of Electronic and Electrical Engineers (IEEE) 802.x set of local area network (LAN) standards. Disadvantageously, this method is limited to LANs because the ARP requests cannot be sent through routers, gateways, and the like.
A need exists for a method of monitoring network adapters on a WAN that can keep track of potentially failed network adapters to prevent the WAN or LAN from disabling a computer network.
It is, therefore, an object of the present invention to provide a method for determining if an address of a network adapter is functioning from a local computer.
It is another object of the present invention to provide a method and apparatus for a local computer to determine if an address of a local adapter is functioning and report to an address monitoring program whether the network adapter is functional.
These and other objects of the present invention are achieved by a method and apparatus which performs a simple check of the network adapter by sending a message to an address of a local adapter. If the message is not sent, then a more in depth check of the network is performed. The local computer sends a request to a first remote computer to ping the adapter on the local computer. If this ping is successful, then the local computer sends a request to a second remote computer to ping the adapter on the local computer. The pinging by two computers provides confirmation that the network adapter is functional. If both of the pings are unsuccessful, then the address of the network adapter is moved to another adapter on another computer.
The foregoing objects of the present invention are also achieved by a method of monitoring a network address and moving the network address. A data packet is sent from a first computer through an address of a local adapter. It is determined if the data packet was sent. If the data packet was not sent, then the first computer requests that a second computer send an echo/reply packet to the address of the adapter on the first computer. If the reply packet was not returned to the second computer, the address is moved to a different adapter.
The foregoing objects of the present invention are also achieved by an article having at least one sequence of machine executable instructions on a medium bearing the executable instructions in machine readable form, wherein execution of the instructions by one or more processors causes the one or more processors to send a data packet from a first computer to an address of a local adapter. It is determined if the data packet was sent. A second computer is requested, if the data packet was not sent, to send an echo/reply packet to the address of the adapter on the first computer. If the reply packet was not returned to the second computer, the first computer causes the address to be moved to a different adapter.
The foregoing objects of the present invention are also achieved by a computer system having a processor and a memory coupled to the processor, the memory having stored therein sequences of instructions, which, when executed by the processor, causes the processor to send a data packet from a first computer to an address of a local adapter. The first computer determines if the data packet was sent. The first computer requests a second computer, if the data packet was not sent, to send an echo/reply packet to the address of the adapter on the first computer. If the reply packet was not returned to the second computer, the first computer causes the address to be moved to a different adapter.
The foregoing objects of the present invention are also achieved by a computer architecture including sending means for sending a data packet from a first computer through an address of a local adapter. Determining means are provided for determining if the data packet was sent. Requesting means are provided for requesting by the first computer, if the data packet was not sent, that a second computer send an echo/reply packet to the address of the adapter on the first computer. If the reply packet was not returned to the second computer, moving means are provided for moving the address to a different adapter.
Still other objects and advantages of the present invention will become readily apparent to those skilled in the art from following detailed description, wherein the preferred embodiments of the invention are shown and described, simply by way of illustration of the best mode contemplated of carrying out the invention. As will be realized, the invention is capable of other and different embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawings and description thereof are to be regarded as illustrative in nature, and not as restrictive.